package com.weixing.mall.provider.api.model.vo;

import com.fasterxml.jackson.annotation.JsonFormat;
import com.weixing.mall.base.constant.DatePattern;
import com.weixing.mall.base.enums.IsEnableEnum;
import com.weixing.mall.base.enums.WhetherEnum;
import com.weixing.mall.provider.api.model.enums.AgentLevelEnum;
import com.weixing.mall.provider.api.model.enums.IsOfficialEnum;
import lombok.Data;

import java.math.BigDecimal;
import java.util.Date;

/**
 * AgentVo
 *
 * @author siashan
 * @since v1.0
 */
@Data
public class AgentVo {
    /**
     * id
     */
    private Long id;
    /**
     * 上级id
     */
    private Long parentId;
    /**
     * 上级代理名称
     */
    private String parentName;
    /**
     * 分佣规则
     */
    private Integer rebateRule;
    /**
     * 代理优惠id
     */
    private String agentSn;
    /**
     * 代理名称
     */
    private String agentName;
    /**
     * 代理等级
     */
    private AgentLevelEnum agentLevel;
    /**
     * 邮箱
     */
    private String email;
    /**
     * 手机号
     */
    private String mobile;
    /**
     * 微信号
     */
    private String wechatNum;
    /**
     * 是否有效  0 禁用   1 启用
     */
    private IsEnableEnum isEnable;
    /**
     * 是否正式  1正式  2试用
     */
    private IsOfficialEnum isOfficial;
    /**
     * 是否过期  0 未过期  1过期
     */
    private Integer isExpire;
    /**
     * 代理折扣
     */
    private BigDecimal discount;
    /**
     * 是否已绑定代理 0 未绑定   1已绑定
     */
    private WhetherEnum isBind;
    /**
     *
     */
    private String superiorName;
    /**
     *
     */
    private String loginName;
    /**
     * 身份证号
     */
    private String idCard;
    /**
     * 省
     */
    private String province;
    /**
     * 市
     */
    private String city;
    /**
     * 详细地址
     */
    private String addr;
    /**
     * 客服id
     */
    private Long customerId;
    /**
     * 客服名称
     */
    private String customerName;
    /**
     * 代理结构树
     */
    private String agentTreePath;
    /**
     * 所属经销商id
     */
    private Long dealerId;
    /**
     * 所属经销商名称
     */
    private String dealer;
    /**
     * 代理到期时间
     */
    @JsonFormat(locale = "zh", timezone = "GMT+8", pattern = DatePattern.NORM_DATETIME_PATTERN)
    private Date maturityTime;
    /**
     * 代理创建时间
     */
    @JsonFormat(locale = "zh", timezone = "GMT+8", pattern = DatePattern.NORM_DATETIME_PATTERN)
    private Date createdTime;


    /**
     * 生效时间
     */
    @JsonFormat(locale = "zh", timezone = "GMT+8", pattern = DatePattern.NORM_DATETIME_PATTERN)
    private Date effectTime;

    /**
     * 备注
     */
    private String remark;
    /**
     * 推荐人优惠id
     */
    private String inviteId;

    /**
     * 昵称
     */
    private String nickName;

    /**
     * 团队人数
     */
    private int groupCnt;


    /**
     * 是否加入了黑名单   0 否 1是
     */
    private Integer isBlack;
}
